Data buffering apparatus for buffering imaging data between a raster image processor (RIP) and an output device

ABSTRACT

A method and apparatus for providing data buffering through a plurality of storage buffers between at least one raster image processor (RIP) and at least one output device in an imaging system. The imaging data being produced by a RIP and stored on a first storage buffer is redirected to a second storage buffer if an output device requires imaging data previously stored on the first storage buffer. After the required imaging data has been output to the output device, the imaging data segmented across the first and second storage buffers is reconstituted.

FIELD OF THE INVENTION

The present invention relates in general to imaging systems. Moreparticularly, the present invention is directed to a method andapparatus for providing data buffering between at least one raster imageprocessor (RIP) and at least one output device such as an imagesetter,platemaker, digital proofer, digital color printer or the like. Ofcourse, as should be apparent from the following discussion, anyapplication involving the production and consumption of large parcels ofdata could take advantage of the method and apparatus of the presentinvention.

BACKGROUND OF THE INVENTION

As is known in the art of electronic prepress systems, output devicessuch as laser imagesetters require a steady supply of imaging data tooperate efficiently. Unfortunately, the RIP(s) which provide the imagingdata to the imagesetter generally operate in a bursty manner which mayleave the imagesetter starved for imaging data or the RIP(s) waiting forthe imagesetter to use previously available imaging data.

Recently, several data buffering systems have been developed to addressthis concern. One such system is disclosed in U.S. Pat. No. 5,274,761,incorporated herein by reference. In this system, an imagesetterconsumes imaging data, provided by a single RIP, from a pair of storagedevices in an alternating manner. Although this data buffering systemincreases data throughput between the RIP and the imagesetter to alimited degree, the imagesetter and RIP may be forced to remain idle forextended periods of time, thereby wasting valuable processing time. Forexample, if the imagesetter has fully consumed the imaging data storedin a first one of the storage devices, it must wait for the RIP tofinish writing additional imaging data into the second storage devicebefore resuming operation. Similarly, the RIP is prevented from writingimaging data into a given one of the storage devices while theimagesetter is consuming data from that storage device.

SUMMARY OF THE INVENTION

In order to overcome the disadvantages of the prior art, the presentinvention provides a multiplexing system for efficiently buffering databetween at least one RIP and at least one output device in an imagingsystem. Advantageously, the multiplexing system of the present inventionallows the RIP(s) to produce high volumes of imaging data with minimalinterruptions while the output device(s) consume previously generatedimaging data in a substantially continuous manner.

In the multiplexing system of the present invention, at least twostorage buffers are used in conjunction with each RIP to transferimaging data from the RIP to an output device in such a way that theRIPs and output devices of the imaging system are kept busy producingand consuming imaging data, respectively. A novel data bufferingprocess, described in greater detail below, is used to ensure optimaldata transfer between a given RIP and output device using the pluralityof storage buffers. In the following discussion, the data bufferingprocess is implemented using a plurality of discrete storage buffers.However, a single storage buffer which allows simultaneous read/writeoperations may be used in lieu of the plurality of discrete storagebuffers to transfer data from each RIP to a selected output devicewithout departing from the scope of the present invention.

When imaging data, herein after referred to as an INPUT TAKE, isavailable from a RIP, the RIP notifies a MUX controller that an INPUTTAKE is now available for output. Upon receiving a notification of anavailable INPUT TAKE, the MUX controller allocates a block of memory inan idle one of the pair of storage buffers (i.e., one not being accessedby an output device or by another RIP) for the storage of the INPUTTAKE. The RIP is then directed by the MUX controller to send and storethe INPUT TAKE in the designated area of the idle storage buffer. Whenthe output device becomes available and a complete INPUT TAKE isavailable for output (i.e., as an OUTPUT TAKE) from one of the storagebuffers, the MUX controller directs the OUTPUT TAKE to the output devicefor processing. If the storage buffer containing the OUTPUT TAKE isidle, the OUTPUT TAKE is simply transferred to the output device withoutinterruption. If, however, a RIP is storing a subsequent INPUTTAKE_(sub) onto the storage buffer containing the required OUTPUT TAKE,the RIP is prevented from competing for that storage buffer. This isachieved by segmenting INPUT TAKE_(sub) across two storage buffers,wherein a first segment of INPUT TAKE_(sub) is stored in one storagebuffer and the second, remaining segment of INPUT TAKE_(sub) is storedin a second storage buffer.

During the initiation of a segmentation process, the MUX controllerfinds an idle storage buffer that is available for data storage.Thereafter, the MUX controller allocates a block of memory of sufficientsize in the idle storage buffer and directs the RIP to store the second,remaining segment of INPUT TAKE_(sub) therein. Preferably, this data isstored in the idle storage buffer beginning at the same offset addressat which data storage terminated prior to the segmentation of the INPUTTAKE. At this point in the segmentation process, the output device hassole access to the storage buffer containing the OUTPUT TAKE.

When the output device finishes consuming the OUTPUT TAKE, the segmentedINPUT TAKE_(sub) is reconstituted by combining the first and secondsegments of INPUT TAKE_(sub) in one of the storage buffers. Preferably,the smaller of the first and second segments is prepended or appended tothe larger of the segments by copying the smaller segment to theappropriate location in the storage buffer containing the largersegment. Once reconstitution has been completed, INPUT TAKE_(sub) (if nolonger active) becomes available for use by the output device.

The present invention increases the processing capabilities of animaging system by maximizing the time during which the RIPs and outputdevices of the imaging system remain active. In many imaging systems,for example, the RIPs and output devices remain active except during thereconstitution of an INPUT TAKE. However, if the reconstitution of anINPUT TAKE occurs during the downtime of the output device (e.g., for animagesetter, during media movement, media punch, media cutting), systeminactivity due to reconstitution is substantially eliminated.

The method and apparatus of the present invention are preferably used inan imaging system network connecting multiple RIPs, output devices, andstorage buffers. Several network configurations are presented in detailbelow.

BRIEF DESCRIPTION OF THE DRAWINGS

The features of the present invention will best be understood from adetailed description of the invention and a preferred embodiment thereofselected for the purposes of illustration and shown in the accompanyingdrawings in which:

FIG. 1 illustrates a simple imaging system network including a softwareRIP, a MUX controller, a pair of storage buffers and a single outputdevice, wherein the software RIP and MUX controller are operating on thesame workstation;

FIG. 2 is a flowchart illustrating the INPUT TAKE control loop inaccordance with the present invention;

FIG. 3 is a flowchart illustrating the OUTPUT TAKE control loop inaccordance with the present invention;

FIG. 4 illustrates the segmentation of an INPUT TAKE across a pair ofstorage buffers and the reconstitution process for combining thesegments of the INPUT TAKE in one of the storage buffers;

FIG. 5 illustrates an imaging system including a single RIP (hardware orsoftware), a MUX controller, a pair of storage buffers and a singleoutput device, wherein the MUX controller is operating on a stand-aloneworkstation;

FIGS. 6 and 7 illustrate imaging systems incorporating a pair of RIPs, asingle output device, and a MUX controller for efficiently bufferingimaging data between the RIPs and output device through a plurality ofstorage buffers; and

FIGS. 8 and 9 illustrate imaging systems including multiple RIPs andmultiple output devices.

DETAILED DESCRIPTION OF THE INVENTION

Referring now specifically to the accompanying drawings, there areillustrated several embodiments of a multiplexing system for efficientlybuffering data between at least one RIP and at least one output devicein an imaging system, wherein like reference numerals refer to likeelements throughout the drawings.

A simple imaging system network 10, incorporating the multiplexingsystem of the present invention, is illustrated in FIG. 1. The imagingsystem network 10 generally includes a RIP 12, such as the VIPER™Software RIP available from the AGFA Division of Bayer Corporation,running on a POWER MACINTOSH™ workstation 14 from Apple Computer, Inc.,and an output device 16, such as the SELECTSET AVANTRA 44™ large formatimagesetter, again available from AGFA Division of Bayer Corporation.

The RIP 12 is connected to the output device 16 through a pair ofstorage buffers 18. Suitable network interfaces 20 are used to connectthe RIP 12, storage buffers 18 and output device 16 in a networkconfiguration. If necessary, depending upon hardware requirements andthe like, appropriate converters (not shown) may be used to ensure datatransfer compatibility between the components of the network. A MUXcontroller 22, in software form, is provided on the workstation 14. Ofcourse, the MUX controller 22 may be coupled to the imaging system 10through other nodes in the network.

The data buffering operation provided by the multiplexing system of thepresent invention is presented in detail in FIGS. 2, 3 and 4. Referringfirst to FIG. 2, there is illustrated the INPUT TAKE control loop forstoring an INPUT TAKE on one or both of the storage buffers 18. In thefollowing discussion, the storage buffers 18 are referenced as BUFFER Mand BUFFER N.

In block 200, the system waits for the RIP 12 to supply an INPUT TAKE.When an INPUT TAKE is initiated by the RIP 12, the RIP 12 notifies theMUX controller 22 of the start of the INPUT TAKE (block 202). The MUXcontroller 22 allocates a block of memory in an idle one (BUFFER M) ofthe storage buffers 18 and sends the corresponding buffer address to theRIP 12 (block 204). If the output device 16 does not require an OUTPUTTAKE previously stored in BUFFER M, the entire INPUT TAKE is stored inBUFFER M starting at the given buffer address (block 206). When thecomplete INPUT TAKE has been stored (block 208), the RIP 12 notifies theMUX controller 22 of the end of the INPUT TAKE (block 210), whereinprocessing control returns to block 200.

Throughout the storage of the INPUT TAKE in BUFFER M, the MUX controller22 monitors the output device 16 (loop 212 to block 214) to determinewhether the output device 16 requires an OUTPUT TAKE previously storedin BUFFER M. If the output device 16 does require an OUTPUT TAKEpreviously stored in BUFFER M (block 216), the MUX controller 22provides the RIP 12 with a new buffer address (block 218) designating anew memory location in BUFFER N. Upon receipt of the new buffer address,the RIP 12 stores the remaining segment of the INPUT TAKE in BUFFER Nbeginning at the new buffer address, thereby freeing BUFFER M andsegmenting the INPUT TAKE across the pair of storage buffers 18.Advantageously, by using such a segmentation process, the output device16 is provided with a required OUTPUT TAKE in a substantiallyinstantaneous manner, while the RIP 12 continues to produce and storeimaging data without interruption.

The OUTPUT TAKE control loop for supplying an OUTPUT TAKE to the outputdevice 16 is presented in FIG. 3. When an OUTPUT TAKE and the outputdevice 16 are both available (block 300), the MUX controller 22determines whether the storage buffer 18 containing the OUTPUT TAKE isbusy receiving a subsequent INPUT TAKE from the RIP 12 (block 302). Inthis example, it is assumed that the OUTPUT TAKE is stored on BUFFER M.If BUFFER M is not busy receiving an INPUT TAKE (i.e., segmentation ofthe INPUT TAKE is not required), the MUX controller 22 directs theOUTPUT TAKE stored in BUFFER M to the output device 16 for furtherprocessing (block 304). Thereafter, since segmentation of the INPUT TAKEwas not required (block 306), processing control returns to block 300.

If BUFFER M is busy receiving an INPUT TAKE (block 302), rendering itunavailable to the output device 16, the MUX controller 22 initiates asegmentation process wherein the segment of the INPUT TAKE not alreadystored on BUFFER M is stored on BUFFER N. Prior to the segmentation ofthe INPUT TAKE, the MUX controller 22 locates (block 308) an idle buffer(BUFFER N) and allocates space in BUFFER N (block 310) for the storageof the remaining segment of the INPUT TAKE. Thereafter, the MUXcontroller 22 redirects the storage of the INPUT TAKE from BUFFER M toBUFFER N (block 312) and sets a segmentation flag (block 314). Since thestorage buffer 18 (BUFFER M) containing the OUTPUT TAKE is no longerbusy receiving the INPUT TAKE, the OUTPUT TAKE is now available to theoutput device 16 (block 304).

If the segmentation flag has been set (block 306), the INPUT TAKE isreconstituted after the output device 16 has finished processing aprevious OUTPUT TAKE. In accordance with the preferred embodiment of thepresent invention, the reconstitution process is dependent upon therelative sizes of the segments of the INPUT TAKE stored in BUFFER M andBUFFER N. Of course, other reconstitution methods may be utilized tojoin the segments of the INPUT TAKE without departing from the scope ofthe present invention.

In block 316, the MUX controller 22 determines whether the segment ofthe INPUT TAKE stored in BUFFER M prior to segmentation is larger thanthe segment of the INPUT TAKE stored in BUFFER N after segmentation. Ifthe segment of the INPUT TAKE in BUFFER N is determined to be the largersegment, the MUX controller 22 prepends the segment of the INPUT TAKEstored in BUFFER M to the segment of the INPUT TAKE stored in BUFFER N(block 318), and frees the space in BUFFER M previously containing theINPUT TAKE segment. After the reconstitution of the INPUT TAKE,processing control returns to block 300. If the reconstituted INPUT TAKEis still active, i.e., still receiving data, the data is stored inBUFFER N until a complete OUTPUT TAKE is available to the output device16.

If, again referring to block 316, the segment of the INPUT TAKE storedin BUFFER M is determined to be larger than the segment of the INPUTTAKE stored in BUFFER N, the MUX controller 22 appends the segment ofthe INPUT TAKE stored in BUFFER N to the segment stored in BUFFER M(block 320), and frees the space in BUFFER N where the INPUT TAKEsegment was stored. If the reconstituted INPUT TAKE is no longer active(block 322), processing control returns to block 300 where thereconstituted INPUT TAKE becomes available to the output device 16 as anOUTPUT TAKE. If, however, the reconstituted INPUT TAKE is still active(block 322), any remaining data is redirected to BUFFER M (block 324).Thereafter, processing returns to block 300.

The reconstitution of a segmented INPUT TAKE is illustrated in greaterdetail in FIG. 4. In this example, an INPUT TAKE has been segmentedbetween BUFFER M and BUFFER N, with a first segment 400 of the INPUTTAKE stored in BUFFER M and a second segment 404 of the INPUT TAKEstored in BUFFER N. In addition, information 402 specific to the INPUTTAKE (e.g., file identifier, job and output device data) is storedtogether with the first segment 400. If the combination of the firstsegment 400 and the information 402 is smaller than the second segment404 (block 316, FIG. 3), the first segment 400 and information 402 areprepended to the second segment 404 as indicated by the soliddirectional arrows. Similarly, if the combination of the first segment400 and the information 402 is larger than the second segment 404, thesecond segment 404 is appended to the first segment 402 as indicated bythe dashed directional arrows.

The multiplexing system of the present invention may be used toefficiently buffer data in a wide variety of imaging systems. Forexample, as illustrated in FIG. 5, the imaging system may include asingle RIP 12, a MUX controller 22 operating on a stand-aloneworkstation 24, a pair of storage buffers 18, and a single output device16. The RIP may be a software RIP as described above, or may be ahardware RIP such as the STAR™ series of hardware RIPs available fromthe AGFA Division of Bayer Corporation. In this and other imagingsystems described below, the system components are arranged in a networkconfiguration using appropriate network interfaces (not shown).

Two imaging systems, each incorporating a pair of RIPs and a singleoutput device, are illustrated in FIGS. 6 and 7. Referring first to FIG.6, there is illustrated an imaging system wherein a software RIP 12A anda hardware RIP 12B are used to produce INPUT TAKE data for output (i.e.,as an OUTPUT TAKE) to a single output device 16. In this example, thesoftware RIP 12A and the MUX controller 22 are running on the sameworkstation 14. To implement the data buffering operation describedabove with regard to FIGS. 2-4, thereby efficiently buffering imagingdata between the RIPs and the output device, each RIP 12A and 12B,regardless of type, is provided with access to a pair of storagebuffers. Specifically, the software RIP 12A stores INPUT TAKE data onstorage buffers 18A and 18B, while the hardware RIP 12B stores INPUTTAKE data on storage buffers 18B and 18C. In this configuration, theRIPs 12A and 12B share a storage buffer 18B to reduce the number ofstorage buffers required by the imaging system. Of course, it should bereadily apparent that each RIP 12A and 12B may each be independentlyprovided with a pair of storage buffers. A similar imaging system,incorporating a pair of RIPs 12A and 12B (software and/or hardware) anda single output device 16, is illustrated in FIG. 7. Unlike theconfiguration illustrated in FIG. 6, however, the MUX controller 22operates on a stand-alone workstation 24 to control the data bufferingoperation through the storage buffers 18(A-C).

A more complex imaging system having a plurality of RIPs and a pluralityof output devices is presented in FIG. 8. As in the previous examples, apair of storage buffers are used in conjunction with each RIP totransfer imaging data, under the direction of the MUX controller 22,from the RIP to an output device so that the RIPs and output devices ofthe imaging system are kept busy producing and consuming imaging data,respectively. Preferably, the data buffering operation described abovewith regard to FIGS. 2-4 is used to efficiently transfer imaging datathrough the imaging system of FIG. 8.

In the imaging system shown in FIG. 8, imaging (INPUT TAKE) data isproduced by a plurality of software and/or hardware RIPs 12A, 12B, 12Cand 12D. In operation, RIP 12A stores INPUT TAKE data on storage buffers18A and 18B, RIP 12B stores INPUT TAKE data on storage buffers 18B and18C, RIP 12C stores INPUT TAKE data on storage buffers 18D and 18E, andRIP 12D stores INPUT TAKE data on storage buffers 18E and 18F. As shown,several of the storage buffers, namely storage buffers 18B and 18E, areshared by two RIPs.

A plurality of data routing systems 30A and 30B (only two of which areshown), each including a plurality of ports 32, are used to direct dataand control information to/from any node on the network in response toinstructions provided by the MUX controller 22. For example, an OUTPUTTAKE produced by RIP 12A and stored on storage buffer 18B may bedirected through data routing systems 30A and 30B for output on outputdevice 16B. As should be readily apparent, many disparate data paths arepossible in this system. The routing control information used by the MUXcontroller 22 to efficiently buffer data between the plurality of RIPsand the plurality of output devices is provided in part by the INPUTTAKE information 402 (see FIG. 4) stored in conjunction with the INPUTTAKE raster data.

A second, substantially similar embodiment of an imaging systemincluding multiple RIPs and multiple output devices is illustrated inFIG. 9. Unlike the configuration of FIG. 8, however, each RIP 12A, 12B,12C and 12D is provided with a pair of dedicated storage buffers18(A-B), 18(C-D), 18(E-F) and 18(G-H), respectively. Again, a pluralityof data routing systems 30A and 30B are used to direct data and controlinformation to/from any node on the network in response to instructionsprovided by the MUX controller 22.

The foregoing description of the present invention has been presentedfor purposes of illustration and description. It is not intended to beexhaustive or to limit the invention to the precise form disclosed, andobviously many modifications and variations are possible in light of theabove teaching. Such modifications and variations that may be apparentto a person skilled in the art are intended to be included within thescope of this invention as defined by the accompanying claims.

We claim:
 1. An imaging system comprising:a raster image processor (RIP)for producing imaging data; an output device for consuming imaging dataproduced by said RIP; and means for buffering imaging data between saidRIP and said output device, said data buffering means including aplurality of storage buffers, means for storing a first supply ofimaging data produced by said RIP on a first one of said storagebuffers, means for determining if said output device requires a secondsupply of imaging data produced by said RIP and previously stored onsaid first storage buffer, means for segmenting said first supply ofimaging data between said first storage buffer and a second one of saidstorage buffers if said output device requires said second supply ofimaging data previously stored on said first storage buffer, and meansfor outputting said second supply of imaging data to said output device.2. The imaging system according to claim 1, wherein said data bufferingmeans further includes:means for redirecting the storage of said firstsupply of imaging data from said first storage buffer to said secondstorage buffer, wherein a first segment of said first supply of imagingdata is stored in said first storage buffer prior to said segmentingstep and a second segment of said first supply of imaging data is storedin said second storage buffer after said segmenting step.
 3. The imagingsystem according to claim 2, wherein said data buffering means furtherincludes:means for combining said first and second segments in one ofsaid storage buffers to reconstitute said first supply of imaging data.4. The imaging system according to claim 3, wherein said combining meanscombines said first and second segments in one of said first or secondstorage buffers.
 5. The imaging system according to claim 4, whereinsaid combining means further includes means for determining whether saidfirst segment is larger than said second segment, means for copying saidfirst segment from said first storage buffer to said second storagebuffer if said first segment is smaller than the second segment, andmeans for copying said second segment from said second storage buffer tosaid first storage buffer if said second segment is smaller than saidfirst segment.
 6. The imaging system according to claim 5, wherein meansfor copying said first segment from said first storage buffer to saidsecond storage buffer prepends said first segment to said second segmentin said second storage buffer.
 7. The imaging system according to claim5, wherein said means for copying said second segment from said secondstorage buffer to said first storage buffer appends said second segmentto said first segment in said first storage buffer.
 8. An imaging systemcomprising:a plurality of raster image processors (RIPs) for producingimaging data; an output device for consuming imaging data produced bysaid RIPs; and means for buffering imaging data between said RIPs andsaid output device, said data buffering means including a plurality ofstorage buffers, means for storing a first supply of imaging dataproduced by one of said RIPs on a first one of said storage buffers,means for determining if said output device requires a second supply ofimaging data produced by one of said RIPs and previously stored on saidfirst storage buffer, means for segmenting said first supply of imagingdata between said first storage buffer and a second one of said storagebuffers if said output device requires said second supply of imagingdata previously stored on said first storage buffer, and means foroutputting said second supply of imaging data to said output device. 9.The imaging system according to claim 8, wherein said data bufferingmeans further includes:means for redirecting the storage of said firstsupply of imaging data from said first storage buffer to said secondstorage buffer, wherein a first segment of said first supply of imagingdata is stored in said first storage buffer prior to said segmentingstep and a second segment of said first supply of imaging data is storedin said second storage buffer after said segmenting step.
 10. Theimaging system according to claim 9, wherein said data buffering meansfurther includes:means for combining said first and second segments inone of said storage buffers to reconstitute said first supply of imagingdata.
 11. The imaging system according to claim 10, wherein saidcombining means combines said first and second segments in one of saidfirst or second storage buffers.
 12. The imaging system according toclaim 11, wherein said combining means further includes means fordetermining whether said first segment is larger than said secondsegment, means for copying said first segment from said first storagebuffer to said second storage buffer if said first segment is smallerthan the second segment, and means for copying said second segment fromsaid second storage buffer to said first storage buffer if said secondsegment is smaller than said first segment.
 13. The imaging systemaccording to claim 12, wherein means for copying said first segment fromsaid first storage buffer to said second storage buffer prepends saidfirst segment to said second segment in said second storage buffer. 14.The imaging system according to claim 12, wherein said means for copyingsaid second segment from said second storage buffer to said firststorage buffer appends said second segment to said first segment in saidfirst storage buffer.
 15. An imaging system comprising:a plurality ofraster image processors (RIPs) for producing imaging data; a pluralityof output device for consuming imaging data produced by said RIPs; andmeans for buffering imaging data between said RIPs and said outputdevices, said data buffering means including a plurality of storagebuffers, means for storing a first supply of imaging data produced byone of said RIPs on a first one of said storage buffers, means fordetermining if one of said output devices requires a second supply ofimaging data produced by one of said RIPs and previously stored on saidfirst storage buffer, means for segmenting said first supply of imagingdata between said first storage buffer and a second one of said storagebuffers if said one of said output device requires said second supply ofimaging data previously stored on said first storage buffer, and meansfor outputting said second supply of imaging data to said one of saidoutput devices.
 16. The imaging system according to claim 15, whereinsaid data buffering means further includes:means for redirecting thestorage of said first supply of imaging data from said first storagebuffer to said second storage buffer, wherein a first segment of saidfirst supply of imaging data is stored in said first storage bufferprior to said segmenting step and a second segment of said first supplyof imaging data is stored in said second storage buffer after saidsegmenting step.
 17. The imaging system according to claim 16, whereinsaid data buffering means further includes:means for combining saidfirst and second segments in one of said storage buffers to reconstitutesaid first supply of imaging data.
 18. The imaging system according toclaim 17, wherein said combining means combines said first and secondsegments in one of said first or second storage buffers.
 19. The imagingsystem according to claim 18, wherein said combining means furtherincludes means for determining whether said first segment is larger thansaid second segment, means for copying said first segment from saidfirst storage buffer to said second storage buffer if said first segmentis smaller than the second segment, and means for copying said secondsegment from said second storage buffer to said first storage buffer ifsaid second segment is smaller than said first segment.
 20. The imagingsystem according to claim 19, wherein means for copying said firstsegment from said first storage buffer to said second storage bufferprepends said first segment to said second segment in said secondstorage buffer.
 21. The imaging system according to claim 19, whereinsaid means for copying said second segment from said second storagebuffer to said first storage buffer appends said second segment to saidfirst segment in said first storage buffer.
 22. An imaging systemcomprising:a raster image processor (RIP) for producing imaging data; anoutput device for consuming imaging data produced by said RIP; abuffering system for buffering imaging data between said RIP and saidoutput device, said buffering system including a plurality of storagebuffers and a system for storing imaging data produced by said RIP onone of said storage buffers while simultaneously providing imaging datastored on another of said storage buffers to said output device; and asegmenting system for terminating the storage of a supply of imagingdata on a first one of said storage buffers and for continuing thestorage of said supply of imaging data on a second one of said storagebuffers, thereby segmenting said supply of imaging data between saidfirst and second storage buffers, to allow said output device to accessimaging data previously stored on said first storage buffer.